package com.dhcc.DRGsHosp.facade;

import java.util.List;
import java.util.Map;

import org.dayatang.utils.Page;
import org.openkoala.koala.commons.InvokeResult;

import com.dhcc.DRGsHosp.facade.dto.ClinicGroupDTO;

public interface ClinicGroupFacade {
	
	/**
	 *  通过id获取医师
	 *  getClinicGroup.  
	 *  @Description：
	 *  @Author ChenHanlin
	 *  @param id
	 *  @return 
	 *  @Date:2018年3月13日上午9:52:05
	 */
	public InvokeResult getClinicGroup(Long id);
	
	/**
	 *  医师保存
	 *  saveClinicGroup.  
	 *  @Description：
	 *  @Author ChenHanlin
	 *  @param entity
	 *  @return 
	 *  @Date:2018年3月13日上午9:52:27
	 */
	public InvokeResult saveClinicGroup (Map<String,Object> entity);
	
	/**
	 *  根据id删除医师
	 *  removeClinicGroup.  
	 *  @Description：
	 *  @Author ChenHanlin
	 *  @param id
	 *  @return 
	 *  @Date:2018年3月13日上午9:52:37
	 */
	public InvokeResult removeClinicGroup(String id);
	
	/**
	 *  批量删除医师
	 *  removeClinicGroups.  
	 *  @Description：
	 *  @Author ChenHanlin
	 *  @param ids
	 *  @return 
	 *  @Date:2018年3月13日上午9:52:49
	 */
	public InvokeResult removeClinicGroups(String[] ids);
	
	/**
	 *  查询所有医师
	 *  findAllClinicGroup.  
	 *  @Description：
	 *  @Author ChenHanlin
	 *  @return 
	 *  @Date:2018年3月13日上午9:53:05
	 */
	public List<ClinicGroupDTO> findAllClinicGroup();
	
	/**
	 *  医师分页查询
	 *  pageQueryClinicGroup.  
	 *  @Description：
	 *  @Author ChenHanlin
	 *  @param clinicGroup
	 *  @param currentPage
	 *  @param pageSize
	 *  @return 
	 *  @Date:2018年3月13日上午9:53:19
	 */
	public Page<ClinicGroupDTO> pageQueryClinicGroup(ClinicGroupDTO clinicGroup, int currentPage, int pageSize);

	/**
	 * @methodname    :findAllClinicGroup
	 * @description   : 
	 * @param         :
	 * @author        :fulianxia
	 * @return        :
	 * @date          :2015年5月15日
	 */
	public Object findAllClinicGroup(ClinicGroupDTO dto);

	/**
	 * @methodname    :isGroupCodeExist
	 * @description   : 
	 * @param         :
	 * @author        :fulianxia
	 * @return        :
	 * @date          :2015年7月6日
	 */
	public Boolean isGroupCodeExist(String groupCode);
	
	/**
	 * 判断显示顺序是否存在
	 * @param groupOrder
	 * @param groupCode 
	 * @return
	 */
	public boolean isGroupOrderExist(String groupOrder, String groupCode);
	
	/**
	 *  查询医师编码为空数据分布
	 *  findCaseCntDocCodeIsNull.  
	 *  @Description：
	 *  @Author ChenHanlin
	 *  @param dataFrom
	 *  @param dataTo
	 *  @return 
	 *  @Date:2017年12月16日下午10:36:38
	 */
	public List<Map<String,Object>> findCaseCntDocCodeIsNull(String dateFrom, String dateTo);
	
	/**
	 *  同步首页和医师表中的医师信息
	 *  keepIpinfoAndClinicGroup.  
	 *  @Description：
	 *  @Author ChenHanlin
	 *  @param dateFrom
	 *  @param dateTo
	 *  @return 
	 *  @Date:2017年12月15日上午11:23:13
	 */
	public void keepIpinfoAndClinicGroup(String dateFrom, String dateTo);

}

